/**
 * +----------------------------------------------------------------------
 * | @Author: codeavatar   @Year：2021
 * +----------------------------------------------------------------------
 * | @Email: codeavatar@aliyun.com
 * +----------------------------------------------------------------------
 **/
const fwlog = require('./fwlog.js');
const wechat = {
  //权限列表 https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/authorize.html
  permission: function (scope, successcallback, failcallback, completecallback){
    wx.getSetting({
      success(res){
        fwlog.debug(res);
        if (!res.authSetting[scope]){
          //未授权
          wx.authorize({
            scope: scope,
            success(res){
              fwlog.debug(res);
              //授权成功
              successcallback && successcallback();
            },
            fail(res){
              fwlog.debug(res);              
              failcallback && failcallback();
            },
            complete(res){
              fwlog.debug(res);
              completecallback && completecallback();
            }
          })
        }else{
          //已授权
          successcallback && successcallback();
        }
      },
      fail(res){
        //获取权限列表失败
        fwlog.debug(res);
      },
      complete(res){
        //获取权限列表完成
        fwlog.debug(res);
      }
    })
  },
  //更新WechatApp
  forceUpdateWechatApp: function(isConfirm) {
    const updateManager = wx.getUpdateManager();

    updateManager.onCheckForUpdate(function (res) {
      // 请求完新版本信息的回调
      fwlog.debug(res,'onCheckForUpdate');
    });
    updateManager.onUpdateReady(function () {
        if(isConfirm){
            wx.showModal({
                title: '更新提示',
                content: '新版本已经准备好，是否重启应用？',
                success: function (res) {
                    if (res.confirm) {
                        // 新的版本已经下载好，调用 applyUpdate 应用新版本并重启
                        updateManager.applyUpdate()
                    }
                }
            });
         }else{
            updateManager.applyUpdate()
         }
    });;
    updateManager.onUpdateFailed(function () {
      // 新版本下载失败
    })
  }
}
module.exports = wechat;